package com.ruoyi.workbench.mapper;
import java.util.Collection;
import org.apache.ibatis.annotations.Param;

import com.ruoyi.workbench.domain.WorkFile;

import java.util.List;

/**
 * 附件Mapper接口
 * 
 * @author ruoyi
 * @date 2024-07-02
 */
public interface WorkFileMapper 
{
    /**
     * 查询附件
     * 
     * @param sid 附件主键
     * @return 附件
     */
    public WorkFile selectWorkFileBySid(Integer sid);

    /**
     * 查询附件列表
     * 
     * @param workFile 附件
     * @return 附件集合
     */
    public List<WorkFile> selectWorkFileList(WorkFile workFile);

    /**
     * 新增附件
     * 
     * @param workFile 附件
     * @return 结果
     */
    public int insertWorkFile(WorkFile workFile);

    /**
     * 修改附件
     * 
     * @param workFile 附件
     * @return 结果
     */
    public int updateWorkFile(WorkFile workFile);

    /**
     * 删除附件
     * 
     * @param sid 附件主键
     * @return 结果
     */
    public int deleteWorkFileBySid(Integer sid);

    /**
     * 批量删除附件
     * 
     * @param sids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWorkFileBySids(Integer[] sids);

    List<WorkFile> selectAllByJoinClassId(@Param("joinClassId") Integer joinClassId);

    List<WorkFile> selectAllByJoinSystemId(@Param("joinSystemId") Integer joinSystemId);

    int deleteByJoinClassId(@Param("joinClassId") Integer joinClassId);

    int deleteByJoinClassIdIn(@Param("joinClassIdList") Collection<Integer> joinClassIdList);

    int deleteByJoinSystemId(@Param("joinSystemId") Integer joinSystemId);

    int deleteByJoinSystemIdIn(@Param("joinSystemIdList") Collection<Integer> joinSystemIdList);

}
